博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python:Tornado 第四章:Tornado网站部署:第二节:静态文件
阅读量:6613 次
发布时间:2019-06-24

本文共 1393 字,大约阅读时间需要 4 分钟。

上一篇文章:
下一篇文章:

静态文件下载是大多数网站必备的功能,与静态文件相关的开发工作有两类:配置静态文件路径和优化静态文件访问。

1、配置静态文件路径

配置静态文件路径的目的在于为客户端提供静态文件的可访问性。Tornado提供了两种方式进行配置静态文件URL路径与服务器本地路径的关联关系。

(1)static目录配置

在tornado.web.Application的构造函数中可以传入static_path参数,用于配置对URL路径

import tornadodef make_app():    return tornado.web.Application([        #此处写入映射    ],        static_path="C:\\www\\static"    )

这将使诸如

通常这些静态文件的目录与网站的代码文件有某种相对关联关系,可以通过下面这样的方法将该参数设置为相对路径:

import osimport tornadodef make_app():    return tornado.web.Application([        #此处写入映射    ],        static_path=os.path.join(os.path.dirname(__file__),'static')    )

即指定静态目录为本程序文件所在目录的static子目录。

(2)StaticFileHandler配置

如果除了

def make_app():    return tornado.web.Application([        #此处写入映射        #这里配置了3个StaticFileHandler        (r'/css/(.*)',tornado.web.StaticFileHandler,{'path':'assets/css'}),        (r'/images/png/(.*)',tornado.web.StaticFileHandler,{'path':'assets/image'}),        (r'/js/(.*)',tornado.web.StaticFileHandler,{'path':'assets/js','default_filename':'templates/index.html'}),    ],        static_path=os.path.join(os.path.dirname(__file__),'static')    )

本例中除了static_path,还用StaticFileHandler配置了另外3个静态文件目录。

  • 所有对

2、优化静态文件访问

优化静态文件访问的目的在于减少静态文件的重复传送,提高网络及服务器的利用效率,通过在模板文件中用static_url方法修饰静态文件链接可以达到这个目的:

本例中的静态图像链接将被设置为类似/static/images/logo.png?v=5ad4e的形式,其中的v=5ad4e是logo.png文件内容的哈希值,当Tornado静态文件处理器发现该参数时,将通知浏览器该文件可以无限期缓存,因此避免了之后访问该文件时的反复传输。

转载地址:http://vraso.baihongyu.com/

你可能感兴趣的文章
Allegro PCB Design GXL (legacy) 使用slide无法将走线推挤到焊盘的原因
查看>>
php5.4 的 arm 交叉编译
查看>>
XWiki 4.5 M1 发布
查看>>
统计图开发之二:点图元
查看>>
Java面试之SE基础基本数据类型
查看>>
mina源码分析
查看>>
js 正则验证多个邮箱,用;隔开的那种
查看>>
element-ui的rules中正则表达式
查看>>
日常装逼的程序员行为规范
查看>>
临沂吴忠军新浪微博主页
查看>>
检测Android和IOS
查看>>
趣味算法之兔子真能生
查看>>
自己模拟写C++中的String类型
查看>>
Java英文单词Java基础常见英语词汇
查看>>
Faster R-CNN:详解目标检测的实现过程
查看>>
kali下更新软件时,总是报错,说下列签名无效 解决办法
查看>>
Oracle 11gR2 create init script
查看>>
手机端网页web开发要点
查看>>
silverlight水印
查看>>
微软职位内部推荐-Software Engineer II
查看>>